More and more businesses are exchanging data and processing documents electronically. This creates problems as electronic documents may have may different and often incompatible formats due to requirements of legacy backend systems. One solution to this problem is to ensure that all documents are of a particular type, for example Extensible Markup Language (XML). Extensible Markup Language (XML) and XML-based schema languages enable one to describe and exchange structured information between collaborating applications or business partners in a platform and middleware-neutral manner. As a result, many industry initiatives have started to adopt XML and XML-based schema languages to specify both their vocabularies and content models. These schemas are becoming widely published and implemented to facilitate communication between both applications and businesses.
However, it is often not possible to convert or upgrade systems to operate using XML. Many proprietary systems cannot be updated in a cost effective manner, resulting in interoperability issues. A solution to this problem is found in the BizTalk Server, available from Microsoft Corporation of Redmond, Wash., which addresses these interoperability challenges in a platform and technology-neutral manner. It provides specifications for the design and development of XML-based messaging solutions for communication between applications and organizations. BizTalk is capable of receiving documents submitted through a wide variety of media, such as HTTP, SMTP, and SOAP; as e-mail attachments; through the message bus; programmatically through exposed APIs; and through adapter components. The BizTalk Server receive functions monitor HTTP, MSMQ message queues, and file locations for incoming business documents. The receive functions are responsible for submitting the received documents on to a processing pipeline, the second step in the process.
A BizTalk Server processing pipeline is set up to receive incoming documents that conform to a specific document definition, which defines the ordering of the business data within the document. When the document arrives through a receive function, a processing pipeline can log the whole document or any portion of it to the BizTalk Document Tracking database for later analysis, or transform the document to conform to the schema of the target application. After documents are received and mapped to the format of the target application, they are delivered either directly to that application or to a business process that manages delivery to multiple target applications.
However, with all the functionality that BizTalk offers, it does not provide a simple method of allowing third parties to define and modify XML schemas (e.g., XSD) to represent non-XML data, such as, flat files, EDI files, X12 files, etc. that may be received by the server. The present invention provides such a solution.